<?php

function list_user(){
	echo "<table border=\"1\" cellpadding=\"5\" cellspacing=\"0\" >\n";
	echo "<tr><td>ชื่อผู้ใช้</td><td>หน่วยงาน</td><td>การเรียกดู</td><td>การแก้ไข</td><td>ประเภทผู้ใช้</td><td>ชั้นความลับ</td><td>ลบผู้ใช้</td></tr>\n";
	$q = "select * from view_user order by depart_name;";
	$ans = getPG($q);
	foreach($ans as $dat){
		if($dat['read']==0) $read = "ดูหนังสือไม่ได้";
		else if($dat['read']==1) $read = "เฉพาะหน่วยงาน";
		else if($dat['read']==2) $read = "ทุกหน่วยงาน";
		if($dat['write']==0) $write = "แก้หนังสือไม่ได้";
		else if($dat['write']==1) $write = "เฉพาะหน่วยงาน";
		else if($dat['write']==2) $write = "ทุกหน่วยงาน";
		if($dat['user_type']==0) $type = "ผู้ดูแลระบบ";
		else if($dat['user_type']==1) $type = "ทั่วไป";
		echo "<tr><td><a href=\"auser.php?comm=edit&uid=".$dat['user_id']."\">".$dat['user_name']."</a></td><td>".$dat['depart_name']."</td><td>".$read."</td><td>".$write."</td><td>".$type."</td><td>".shSecret($dat['secret'])."</td><td><a href=\"auser.php?comm=del&uid=".$dat['user_id']."&uname=".$dat['user_name']."\"><img src=\"pic/drop.png\" /></a></td></tr>\n";
	}	
	echo "</table>\n";
}

function list_user_secret($secret){
	echo "<optgroup label=\"secret\">\n";
	for($count=0;$count<4;$count++){
		if($count==$secret) echo "<input type=\"radio\" name=\"secret\" value=\"".$count."\" checked >".shSecret($count)." &nbsp;&nbsp;&nbsp;\n";
		else echo "<input type=\"radio\" name=\"secret\" value=\"".$count."\" >".shSecret($count)." &nbsp;&nbsp;&nbsp;\n";
	}
	echo "</optgroup>";
}

function list_user_rapid($rapid){
	echo "<optgroup label=\"rapid\">\n";
	for($count=0;$count<4;$count++){
		if($count==$rapid) echo "<input type=\"radio\" name=\"rapid\" value=\"".$count."\" checked >".shRapid($count)." &nbsp;&nbsp;&nbsp;\n";
		else echo "<input type=\"radio\" name=\"rapid\" value=\"".$count."\" >".shRapid($count)." &nbsp;&nbsp;&nbsp;\n";
	}
	echo "</optgroup>";
}

function chpasswd($opass,$npass1,$npass2){
	if($_SESSION['edoc_pass']!=moo_crypt($opass)){
		addlog("เปลี่ยนรหัสผ่าน","ไม่สามารถเปลี่ยนรหัสผ่านได้ เนื่องจากรหัสผ่านเดิมไม่ถูกต้อง");
		return -1;
	}
	if($npass1!=$npass2){
		addlog("เปลี่ยนรหัสผ่าน","ไม่สามารถเปลี่ยนรหัสผ่านได้ เนื่องจากรหัสตรวจสอบไม่ตรงกัน");
		return -2;
	}
	
	$username = $_SESSION['edoc_user'];
	$npass = moo_crypt($npass1);
	$q = "update edoc_user set user_passwd='$npass' where user_name='$username'";

	updatePG($q);

	$_SESSION['edoc_pass']=$npass;
	addlog("เปลี่ยนรหัสผ่าน","เปลี่ยนรหัสผ่านเรียบร้อยแล้ว");

	return 0;
}

function adduser($uname,$upasswd,$udepart,$udepart_add,$uread,$uwrite,$utype,$secret,$hdepart){
	$depart = $udepart;
	$udepart_add_new = trim($udepart_add);
	if($udepart==0){
		if($udepart_add_new==""){
			addlog("เพิ่มผู้ใช้","ไม่สามารถเพิ่มหน่วยงาน $udepart_add_new ได้");
			return -1;
		}
		$r = add_depart($udepart_add_new,$hdepart);
		//$q = "insert into department (depart_name) values ('$udepart_add_new');";
		//$r = updatePG($q);
		if($r==-1){
			addlog("เพิ่มผู้ใช้","ไม่สามารถเพิ่มหน่วยงาน $udepart_add_new ได้");
			return -1; //add department error
		}
		addlog("เพิ่มผู้ใช้","เพิ่มหน่วยงาน $udepart_add_new เรียบร้อยแล้ว");
		$depart = $r;
	}

	$upasswdd = moo_crypt($upasswd);
	$id = getPG("select nextval('edoc_user_user_id_seq');");
	$id = $id[0]['nextval'];
	$q = "insert into edoc_user (user_id,user_name,user_passwd,read,write,user_type,depart_id,secret) values ($id,'$uname','$upasswdd',$uread,$uwrite,$utype,$depart,$secret);";
	$r = updatePG($q);
	if($r==FALSE){
		addlog("เพิ่มผู้ใช้","ไม่สามารถเพิ่มผู้ใช้ $uname เพราะชื่อผู้ใช้ซ้ำ");
		return -2; //add user error
	}
	addlog("เพิ่มผู้ใช้","เพิ่มผู้ใช้ $uname เรียบร้อยแล้ว");
	return $id;

}

function edituser($uid,$udepart,$udepart_add,$uread,$uwrite,$utype,$uname,$secret,$hdepart){
	$depart = $udepart;
	$udepart_add_new = trim($udepart_add);
	if($udepart==0){
		if($udepart_add_new=="")
		{
			addlog("แก้ไขผู้ใช้","ไม่สามารถเพิ่มหน่วยงาน $udepart_add_new ได้");
			return -1;
		}
		$r = add_depart($udepart_add_new,$hdepart);
		//$q = "insert into department (depart_name) values ('$udepart_add_new');";
		//$r = updatePG($q);
		if($r==-1){
			addlog("แก้ไขผู้ใช้","ไม่สามารถเพิ่มหน่วยงาน $udepart_add_new ได้");
			return -1; //add department error
		}
		addlog("แก้ไขผู้ใช้","เพิ่มหน่วยงาน $udepart_add_new เรียบร้อยแล้ว");
		$q = "select * from department where depart_name='$udepart_add';";
		$r = getPG($q);
		$depart = $r[0]['depart_id'];
	}
	
	$q = "update edoc_user set read=$uread,write=$uwrite,user_type=$utype,depart_id=$depart,secret=$secret where user_id=$uid;";
	$r = updatePG($q);
	if($r==FALSE){
		addlog("แก้ไขผู้ใช้","ไม่สามารถแก้ไขผู้ใช้ $uname ได้");
		return -2; //add user error
	}
	addlog("แก้ไขผู้ใช้","แก้ไขผู้ใช้ $uname เรียบร้อยแล้ว");	
	return 0;
}

function deluser($uid,$uname){
	$q = "delete from edoc_user where user_id=$uid;";
	$r = updatePG($q);
	if($r==FALSE){
		addlog("ลบผู้ใช้","ไม่สามารถลบผู้ใช้ $uname ได้");
		return -1; //del user error
	}
	addlog("ลบผู้ใช้","ลบผู้ใช้ $uname เรียบร้อยแล้ว");
	return 0;
}

function get_user_info($uid){
	$q = "select * from view_user where user_id=$uid;";
	$r = getPG($q);
	return $r[0];
}

?>
